/**********************************************************/
/*					JohnCheng							  */
/*					2009-12-20							  */
/**********************************************************/

///////////////////////////////////////////////////////////
// thickbox 关闭
///////////////////////////////////////////////////////////
WebRoot = "/Sys";
PageExtention = ".jspx";
///////////////////////////////////////////////////////////
// 打开对话框
///////////////////////////////////////////////////////////
function showDialog(urlstr,fields ,width, height) {
	var xml=showModalDialog(urlstr, window, "dialogWidth:"+width+"px; dialogHeight:"+height+"px; status:0");
	if (typeof xml == "undefined" || "" == xml)
		return false;
	var fieldsList = fields.split(",");
	var values = "";
	if(xml.length > 0){
		values = xml.split("|");
		if(fieldsList.length == values.length)
		{
			for(i=0;i<fieldsList.length;i++)
				document.getElementById(fieldsList[i]).value = values[i];
		}
	}
}
/////////////////////////////////////////////////////////////////////////
//页面跳转
////////////////////////////////////////////////////////////////////////
function pageJump(url,query){
	try{
		jumping();
	}catch(err){}
	var page = document.getElementById("page_Num").value;
	if(page == ""){
		alert("页码必须填写");
		return;
	}
	window.location = url + "?p="+page + query;
}
/////////////////////////////////////////////////////////////////////////////////////
//提交表单
////////////////////////////////////////////////////////////////////////////////////
function apply() {
	document.forms[0].submit();
}
//////////////////////////////////////////////////////////////////////////////////////
////////////////////////           删除行                   ///////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
function deleteRow(url,id,gourl){
		$.ajax({
			async: true,
			cache: false,
	   		type: "POST",
	   		url: url,
	   		data: {id:id},
	   		error:function(msg){alert('删除出错')},
			success: function(xml){
							var ok = $.trim(xml);
							if(ok.substr(0,2) == "OK"){
								if(gourl == "" ||  typeof(gourl) == "undefined" || null == gourl)
									history.go(0);
								else
									window.location = gourl;
							}else
								alert(ok);
		}
	});
}
//////////////////////////////////////////////////////////////////////////////////////
//////////                    打开窗口                       ///////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
function openDialog(urlstr,width, height){
	return window.open(urlstr, 'newwindow', 'height='+width+', width='+height+', top=100, left=100, toolbar=no, menubar=no, scrollbars=yes, resizable=no,location=no, status=no,alwaysRaised=yes');
}
//////////////////////////////////////////////////////////////////////////////////////
///////////////////////////显示树形选择窗口///////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
clickElement = null;
function tree(action,hd) 
{
	var newwin = openDialog(action,280, 300);
	var src = event.srcElement;
	newwin.txtField = $(src);//被点击控件
	var pos = $("*[id="+src.id+"]").index($(src));//被点击控件的位置序列
	newwin.idField = $("*[id="+hd+"]").eq(pos);
}
//////////////////////////////////////////////////////////////////////////////////////
///////////////////////////Tab键替换回车键///////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
function fun_tab() {
	if(event.keyCode == 13 && event.srcElement.type!='submit')
	{
		event.keyCode = 9;
	}
	if(event.keyCode == 13 && event.srcElement.type=='submit')
	{
		apply();
	}

}
///////////////////////////////////////////////////////////////////////////////////
///////////////////地图定位////////////////////////////////////
function anchorByXY(txtBox){
	var value = $(txtBox).val();
	if("" == value){
		return;
	}
	return;
}
/////////////////////////////////////////
var autoCompleteOptions = {
minChars : 0,
autoFill: false,
dataType: 'json',
width: 180,
selectFirst: true,
dataType: 'json',
formatItem: function(row, i, n) {
		      return row;         
			},
parse: function(data){
	     var rows = [];
	     for(var i=0; i<data.length; i++){
	      	rows[rows.length] = {    
		        data : data[i].name,    
		        value : data[i].value,
		        result : data[i].name
	        };
	      }
	   		return rows;
	   }
}

function autoComplete(input,bean){
$(typeof input == "string" ? "[id="+input+"]" : input).each(function(idx,the){
	$(the).autocomplete(WebRoot+"/autocomplete"+PageExtention+"?cfg="+$(the).attr("cfg"),autoCompleteOptions).result(
		function(event, data, formatted){
			var hd = $(typeof input == "string" ? "#"+input : input).attr("id").substr(2);
			$("[id="+hd+"]:eq("+idx+")").val(formatted);
	   }
	);
});
}
//////////////删除Table中的一行////////////
function removeTR(table){
	$("#"+table+" tr").each(function(i,row){
		if($(row).find(".checkbox").attr("checked"))
			$(row).remove();
	});
}
/////////////新建一行///////////////////////
function insertHR(table){
	var html = $("#hd"+table).val();
	$(html).insertBefore( $("#"+table+" tr:last") );
	try{
		initAutoComplete();
	}catch(err){
	}
}
////////////////////////////////////////////
function cancelJumping(){
	$("#clickWaiting").remove();
}
////////////////////////////////////////////
function jumping(){
var top = getEvent().clientY + 15;
var left = getEvent().clientX - 50;
if(left < 80)
	left = 10;
$("#clickWaiting").remove();
var div = "<div id=\"clickWaiting\" style=\"display:block;position: absolute;top: "+top+"px;left: "+left+"px;\" id=\"waiting\"><img src=\""+WebRoot+"/images/waiting.gif\"/></div>";
$(div).appendTo($(document.body));
}
////////////////////////////////////////////
function getEvent(){
 if(document.all)
	return window.event;//如果是ie
 func=getEvent.caller;
 while(func!=null){
   var arg0=func.arguments[0];
   if(arg0){if((arg0.constructor==Event || arg0.constructor ==MouseEvent) || (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation)){return arg0;}            }
   func=func.caller;
 }
 return null;
}
////////////////////////////////////////////
function loading(){
	$("div").attr("class","loading").appendTo($(document));
}
////////////////////////////////////////////
$(document).ready(function(){
	$("a.launchWindow").click(function(the){
		var scrWidth = screen.availWidth;
		var scrHeight = screen.availHeight;
		var url = this.href;
		var oper = window.open(url, "operWin", "height="+(scrHeight-50)+", width="+(scrWidth - 300)+", top=5, left=280,toolbar=no, menubar=no, scrollbars=yes, resizable=no, location=no, status=no");
		oper.focus();
		return false;
	});
	$(".ui-state-jump").click(function(idx){
		var url = $(this).attr("jump");
		jumping();
		if(url == undefined || url == ""){
			apply();
			return;
		}
		window.location = url;
	});
});
/////////////////////////////////////////////
function searchFormReset(){
$('input,select,textarea').each(function(){
        var t = this.type, tag = this.tagName.toLowerCase();
		if(this.id !='page_Num'){
        if (t == 'text' || t == 'hidden' || t == 'password' || tag == 'textarea')
            this.value = '';
        else if (t == 'checkbox' || t == 'radio')
            this.checked = false;
        else if (tag == 'select')
            this.selectedIndex = 0;
        }
        });
}
////////////////////////////////////////////
//////字符串截取后显示
////////////////////////////////////////////
function stringLimit(){
	$("td[limit]").each(
	function(idx){
		var content = $(this).text();
		var limit = $(this).attr("limit");
		if(limit == undefined || "" == limit)
			return;
        if(content.length > limit){
			$(this).attr("title",content); 
            $(this).text(content.substring(0,limit) + "...");
        } 
	}
	);
}

/*********************地图操作*********************/
/*				采集员定位						*/
function MapLocateCollecter(x,y){
	alert("called locate function in common.js file.");
}
/*				采集员轨迹回放						*/
function MapReplayTrace(XY){
	alert("performing collector's trace.");
}
/*				部件定位							*/
function MapLocateByPart(partNum){
	alert("performing part locate.");
}
/*				事件定位							*/
function MapLocateByEvent(x,y){
	alert("performing event locate.");
}